package com.xiaoshuidi.cloud.module.contract.dal.dataobject.contract;

import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.xiaoshuidi.cloud.framework.mybatis.core.dataobject.BaseDO;
import lombok.*;

import java.math.BigDecimal;

/**
 * 合同杂费 DO
 *
 * @author 合房租赁
 */
@TableName("contract_extras_data")
@KeySequence("contract_extras_data_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ContractExtrasDataDO extends BaseDO {

    /**
     * 费项Id
     */
    @TableId
    private Long id;
    /**
     * 关联租客合同
     */
    private Long contractId;
    /**
     * 杂费分类| cycle 周期性费用 | once 一次性费用  |deposit 押金费用 | meter 抄表费用
     */
    private String feeSort;
    /**
     * 费项编号(关联Fee表)
     */
    private Long feeId;
    /**
     * 费项名称
     */
    private String feeName;
    /**
     * 费项金额
     */
    private BigDecimal amount;
    /**
     * 付几  |  付款周期
     */
    private Integer payMethodF;
    /**
     * 优惠类型 cycle 周期性优惠 | once 一次性优惠
     */
    private String discountSort;
    /**
     * 优惠方式 rate 优惠比例 % | amount 优惠金额 元/月 | once 优惠金额 元
     */
    private String discountType;
    /**
     * 一次性优惠金额计入首期或末期账单 first 计入首期账单 | last 计入末期账单
     */
    private String discountOrder;
    /**
     * 优惠值
     */
    private BigDecimal discountValue;
    /**
     * 备注
     */
    private String remark;
    /**
     * 版本号
     */
    private Long version;

}
